package com.baiku.sanhos.mapper;

import com.baiku.sanhos.pojo.dto.NoticeDTO;
import com.baiku.sanhos.pojo.entity.Notice;
import com.baiku.sanhos.pojo.vo.NoticeBgIndexVo;
import com.baiku.sanhos.pojo.vo.NoticeIndexVo;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface NoticeMapper {
    /**
     * 增：新增公告信息
     * @param notice
     */
     void addNotice(Notice notice);

    /**
     * 删：根据id删除公告信息
     * @param id
     */
    void deleteNoticeId(Integer id);

    /**
     * 删:根据id批量删除公告信息
     * @param ids
     */
    void deleteNoticeByIds(List<Integer> ids);

    /**
     * 查:查看公告信息
     * @param pageSize
     * @param offset
     * @param notice
     * @return
     */
    List<NoticeBgIndexVo> selectAll(int pageSize, int offset, String notice);

    /**
     * 查：获取全部公告信息
     * @param notice
     * @return
     */
    int getTotalNotices(String notice);

    /**
     * 查：获取公告内容与公告主题
     * @return
     */
    List<Notice> selectOne();

    /**
     * 查：获取医院挂号须知标题与内容
     * @return
     */
    List<Notice> selectTwo();


    /**
     * 查：根据时间字段查询最新两条数据
     * @return
     */
    List<Notice> selectIndexAll();

    /**
     * 改：根据id更新公告主题
     * @param noticeDTO
     */
    void updateById(NoticeDTO noticeDTO);

}
